home *** CD-ROM | disk | FTP | other *** search
/ Candy Factory Pro / Candy Factory Pro.iso / C / NewWPA8.readme < prev    next >
Text File  |  1997-04-30  |  2KB  |  59 lines

  1. Short: Faster chunky output (update)
  2. Type: util/boot
  3. Uploader: mlelstv@serpens.swb.de
  4. Author: mlelstv@serpens.swb.de
  5.  
  6. AmigaOS knows three functions in graphics.library that output
  7. chunky pixels to a RastPort: WritePixelLine8, WritePixelArray8
  8. and WriteChunkyPixels.
  9.  
  10. The original versions of these routines in the KickstartROM
  11. are rather slow and have a bug that trashes the chunky source
  12. buffer.
  13.  
  14. This patch installs improved versions that are often faster by
  15. a factor of 10 (on a fast CPU).
  16.  
  17. -- Requirements:
  18.  
  19. AmigaOS3.0 or AmigaOS3.1. The WriteChunkyPixels function exists
  20. only in AmigaOS3.1.
  21.  
  22. An 68020 or higher CPU.
  23.  
  24. -- Operation:
  25.  
  26. The core of the patch are four routines that translate chunky data
  27. into 1..4 bitplanes and that write only complete words into a bitmap.
  28.  
  29. For destinations with 5..8 bitplanes the planes are written in two
  30. passes translating upper and lower nibbles of the source data.
  31.  
  32. If the destination rectangle is not aligned to words in the bitmap
  33. the unaligned border words are first converted into a buffer on the
  34. stack and then masked and copied to the destination bitmap.
  35.  
  36. The patch utilizes the DoHookClipRects() function of AmigaOS3.x to
  37. write directly into the destination bitmap, even for layered RastPorts.
  38. This avoids completely the temporary bitmap you pass to the WPL8 and
  39. WPA8 functions, but of course programs must not rely on this.
  40.  
  41. -- Installation:
  42.  
  43. Add the newwpa8 command directly after SetPatch in your startup-sequence.
  44. The patch detaches itself from the Shell, there is no need to RUN it.
  45.  
  46. It is most important that the patch is run before any other patch to
  47. the graphics system like the CyberGraphics driver that intercepts
  48. the calls itself.
  49.  
  50. -- History
  51.  
  52. 1.0 initial version, used tmprp and blitter, WPA8 and WPL8
  53. 1.1 new c2p
  54. 1.2 direct destination writing for aligned rectangles
  55. 1.3 direct destination writing for non-aligned rectangles, added WCP
  56. 1.4 bugfix for modulo calculation in WPA8, WPL8
  57.  
  58. Michael van Elst
  59.